package basisDemo;

import java.lang.annotation.*;

@MyAnnotation("Demo")
public class AnnotationDemo {
    @MyAnnotation("Test")
    private void func() {

    }
}

// Target 注解的作用目标
// Retention 有效的时期，一般都是运行期有效
// Documented 表示是否生成在文档doc中
// Inherited 注解可继承，即子类继承父类的时候，注解也被传递下去
// 当只有一个参数，推荐命名为value，这样就可以省略 value=
@Target(value = {ElementType.METHOD, ElementType.TYPE})
@Retention(value = RetentionPolicy.RUNTIME)
@Inherited
@interface MyAnnotation {
    // 注解的参数！并不是方法，可以有默认值
    // 参数类型 参数名()
    String value() default "";
}

